package com.mfl.service;

import com.mfl.common.PageResult;
import com.mfl.pojo.dto.AdminDTO;
import com.mfl.pojo.dto.AdminLoginDTO;
import com.mfl.pojo.dto.AdminPageQueryDTO;
import com.mfl.pojo.entity.Admin;
import com.mfl.pojo.vo.AdminVO;

import java.util.List;

public interface AdminService {

    /**
     * 管理员登录
     * @param admin
     * @return
     */
    Admin login(AdminLoginDTO admin);

    /**
     * 新增管理员
     * @param adminDTO
     */
    void insert(AdminDTO adminDTO);

    /**
     * 分页查询管理员信息
     * @param adminPageQueryDTO
     * @return
     */
    PageResult pageQuery(AdminPageQueryDTO adminPageQueryDTO);

    /**
     * 批量删除管理员
     * @param ids
     */
    void batchDelete(List<Integer> ids);

    /**
     * 修改管理员状态
     * @param id
     * @param status
     */
    void updateStatus(Integer status, Integer id);

    /**
     * 根据id查询管理员信息
     * @param id
     * @return
     */
    AdminVO getByAdminId(int id);

    /**
     * 修改管理员信息
     * @param adminDTO
     */
    void update(AdminDTO adminDTO);
}
